package com.eshop.modules.order.vo;

import com.eshop.modules.user.vo.UserQueryVo;
import com.eshop.modules.activity.vo.StoreCouponUserVo;
import com.eshop.modules.product.vo.SystemStoreQueryVo;
import com.eshop.modules.order.service.dto.PriceGroupDto;
import com.eshop.modules.cart.vo.StoreCartQueryVo;
import java.util.List;
import com.eshop.modules.user.domain.UserAddress;
import java.io.Serializable;

public class ConfirmOrderVo implements Serializable
{
    private UserAddress addressInfo;
    private Integer bargainId;
    private List<StoreCartQueryVo> cartInfo;
    private Integer combinationId;
    private Boolean deduction;
    private Boolean enableIntegral;
    private Double enableIntegralNum;
    private Integer integralRatio;
    private String orderKey;
    private PriceGroupDto priceGroup;
    private Integer seckillId;
    private Integer storeSelfMention;
    private SystemStoreQueryVo systemStore;
    private StoreCouponUserVo usableCoupon;
    private UserQueryVo userInfo;
    
    public static ConfirmOrderVoBuilder builder() {
        return new ConfirmOrderVoBuilder();
    }
    
    public UserAddress getAddressInfo() {
        return this.addressInfo;
    }
    
    public Integer getBargainId() {
        return this.bargainId;
    }
    
    public List<StoreCartQueryVo> getCartInfo() {
        return this.cartInfo;
    }
    
    public Integer getCombinationId() {
        return this.combinationId;
    }
    
    public Boolean getDeduction() {
        return this.deduction;
    }
    
    public Boolean getEnableIntegral() {
        return this.enableIntegral;
    }
    
    public Double getEnableIntegralNum() {
        return this.enableIntegralNum;
    }
    
    public Integer getIntegralRatio() {
        return this.integralRatio;
    }
    
    public String getOrderKey() {
        return this.orderKey;
    }
    
    public PriceGroupDto getPriceGroup() {
        return this.priceGroup;
    }
    
    public Integer getSeckillId() {
        return this.seckillId;
    }
    
    public Integer getStoreSelfMention() {
        return this.storeSelfMention;
    }
    
    public SystemStoreQueryVo getSystemStore() {
        return this.systemStore;
    }
    
    public StoreCouponUserVo getUsableCoupon() {
        return this.usableCoupon;
    }
    
    public UserQueryVo getUserInfo() {
        return this.userInfo;
    }
    
    public void setAddressInfo(final UserAddress addressInfo) {
        this.addressInfo = addressInfo;
    }
    
    public void setBargainId(final Integer bargainId) {
        this.bargainId = bargainId;
    }
    
    public void setCartInfo(final List<StoreCartQueryVo> cartInfo) {
        this.cartInfo = cartInfo;
    }
    
    public void setCombinationId(final Integer combinationId) {
        this.combinationId = combinationId;
    }
    
    public void setDeduction(final Boolean deduction) {
        this.deduction = deduction;
    }
    
    public void setEnableIntegral(final Boolean enableIntegral) {
        this.enableIntegral = enableIntegral;
    }
    
    public void setEnableIntegralNum(final Double enableIntegralNum) {
        this.enableIntegralNum = enableIntegralNum;
    }
    
    public void setIntegralRatio(final Integer integralRatio) {
        this.integralRatio = integralRatio;
    }
    
    public void setOrderKey(final String orderKey) {
        this.orderKey = orderKey;
    }
    
    public void setPriceGroup(final PriceGroupDto priceGroup) {
        this.priceGroup = priceGroup;
    }
    
    public void setSeckillId(final Integer seckillId) {
        this.seckillId = seckillId;
    }
    
    public void setStoreSelfMention(final Integer storeSelfMention) {
        this.storeSelfMention = storeSelfMention;
    }
    
    public void setSystemStore(final SystemStoreQueryVo systemStore) {
        this.systemStore = systemStore;
    }
    
    public void setUsableCoupon(final StoreCouponUserVo usableCoupon) {
        this.usableCoupon = usableCoupon;
    }
    
    public void setUserInfo(final UserQueryVo userInfo) {
        this.userInfo = userInfo;
    }
    
    @Override
    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof ConfirmOrderVo)) {
            return false;
        }
        final ConfirmOrderVo other = (ConfirmOrderVo)o;
        if (!other.canEqual(this)) {
            return false;
        }
        final Object this$bargainId = this.getBargainId();
        final Object other$bargainId = other.getBargainId();
        Label_0065: {
            if (this$bargainId == null) {
                if (other$bargainId == null) {
                    break Label_0065;
                }
            }
            else if (this$bargainId.equals(other$bargainId)) {
                break Label_0065;
            }
            return false;
        }
        final Object this$combinationId = this.getCombinationId();
        final Object other$combinationId = other.getCombinationId();
        Label_0102: {
            if (this$combinationId == null) {
                if (other$combinationId == null) {
                    break Label_0102;
                }
            }
            else if (this$combinationId.equals(other$combinationId)) {
                break Label_0102;
            }
            return false;
        }
        final Object this$deduction = this.getDeduction();
        final Object other$deduction = other.getDeduction();
        Label_0139: {
            if (this$deduction == null) {
                if (other$deduction == null) {
                    break Label_0139;
                }
            }
            else if (this$deduction.equals(other$deduction)) {
                break Label_0139;
            }
            return false;
        }
        final Object this$enableIntegral = this.getEnableIntegral();
        final Object other$enableIntegral = other.getEnableIntegral();
        Label_0176: {
            if (this$enableIntegral == null) {
                if (other$enableIntegral == null) {
                    break Label_0176;
                }
            }
            else if (this$enableIntegral.equals(other$enableIntegral)) {
                break Label_0176;
            }
            return false;
        }
        final Object this$enableIntegralNum = this.getEnableIntegralNum();
        final Object other$enableIntegralNum = other.getEnableIntegralNum();
        Label_0213: {
            if (this$enableIntegralNum == null) {
                if (other$enableIntegralNum == null) {
                    break Label_0213;
                }
            }
            else if (this$enableIntegralNum.equals(other$enableIntegralNum)) {
                break Label_0213;
            }
            return false;
        }
        final Object this$integralRatio = this.getIntegralRatio();
        final Object other$integralRatio = other.getIntegralRatio();
        Label_0250: {
            if (this$integralRatio == null) {
                if (other$integralRatio == null) {
                    break Label_0250;
                }
            }
            else if (this$integralRatio.equals(other$integralRatio)) {
                break Label_0250;
            }
            return false;
        }
        final Object this$seckillId = this.getSeckillId();
        final Object other$seckillId = other.getSeckillId();
        Label_0287: {
            if (this$seckillId == null) {
                if (other$seckillId == null) {
                    break Label_0287;
                }
            }
            else if (this$seckillId.equals(other$seckillId)) {
                break Label_0287;
            }
            return false;
        }
        final Object this$storeSelfMention = this.getStoreSelfMention();
        final Object other$storeSelfMention = other.getStoreSelfMention();
        Label_0324: {
            if (this$storeSelfMention == null) {
                if (other$storeSelfMention == null) {
                    break Label_0324;
                }
            }
            else if (this$storeSelfMention.equals(other$storeSelfMention)) {
                break Label_0324;
            }
            return false;
        }
        final Object this$addressInfo = this.getAddressInfo();
        final Object other$addressInfo = other.getAddressInfo();
        Label_0361: {
            if (this$addressInfo == null) {
                if (other$addressInfo == null) {
                    break Label_0361;
                }
            }
            else if (this$addressInfo.equals(other$addressInfo)) {
                break Label_0361;
            }
            return false;
        }
        final Object this$cartInfo = this.getCartInfo();
        final Object other$cartInfo = other.getCartInfo();
        Label_0398: {
            if (this$cartInfo == null) {
                if (other$cartInfo == null) {
                    break Label_0398;
                }
            }
            else if (this$cartInfo.equals(other$cartInfo)) {
                break Label_0398;
            }
            return false;
        }
        final Object this$orderKey = this.getOrderKey();
        final Object other$orderKey = other.getOrderKey();
        Label_0435: {
            if (this$orderKey == null) {
                if (other$orderKey == null) {
                    break Label_0435;
                }
            }
            else if (this$orderKey.equals(other$orderKey)) {
                break Label_0435;
            }
            return false;
        }
        final Object this$priceGroup = this.getPriceGroup();
        final Object other$priceGroup = other.getPriceGroup();
        Label_0472: {
            if (this$priceGroup == null) {
                if (other$priceGroup == null) {
                    break Label_0472;
                }
            }
            else if (this$priceGroup.equals(other$priceGroup)) {
                break Label_0472;
            }
            return false;
        }
        final Object this$systemStore = this.getSystemStore();
        final Object other$systemStore = other.getSystemStore();
        Label_0509: {
            if (this$systemStore == null) {
                if (other$systemStore == null) {
                    break Label_0509;
                }
            }
            else if (this$systemStore.equals(other$systemStore)) {
                break Label_0509;
            }
            return false;
        }
        final Object this$usableCoupon = this.getUsableCoupon();
        final Object other$usableCoupon = other.getUsableCoupon();
        Label_0546: {
            if (this$usableCoupon == null) {
                if (other$usableCoupon == null) {
                    break Label_0546;
                }
            }
            else if (this$usableCoupon.equals(other$usableCoupon)) {
                break Label_0546;
            }
            return false;
        }
        final Object this$userInfo = this.getUserInfo();
        final Object other$userInfo = other.getUserInfo();
        if (this$userInfo == null) {
            if (other$userInfo == null) {
                return true;
            }
        }
        else if (this$userInfo.equals(other$userInfo)) {
            return true;
        }
        return false;
    }
    
    protected boolean canEqual(final Object other) {
        return other instanceof ConfirmOrderVo;
    }
    
    @Override
    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $bargainId = this.getBargainId();
        result = result * 59 + (($bargainId == null) ? 43 : $bargainId.hashCode());
        final Object $combinationId = this.getCombinationId();
        result = result * 59 + (($combinationId == null) ? 43 : $combinationId.hashCode());
        final Object $deduction = this.getDeduction();
        result = result * 59 + (($deduction == null) ? 43 : $deduction.hashCode());
        final Object $enableIntegral = this.getEnableIntegral();
        result = result * 59 + (($enableIntegral == null) ? 43 : $enableIntegral.hashCode());
        final Object $enableIntegralNum = this.getEnableIntegralNum();
        result = result * 59 + (($enableIntegralNum == null) ? 43 : $enableIntegralNum.hashCode());
        final Object $integralRatio = this.getIntegralRatio();
        result = result * 59 + (($integralRatio == null) ? 43 : $integralRatio.hashCode());
        final Object $seckillId = this.getSeckillId();
        result = result * 59 + (($seckillId == null) ? 43 : $seckillId.hashCode());
        final Object $storeSelfMention = this.getStoreSelfMention();
        result = result * 59 + (($storeSelfMention == null) ? 43 : $storeSelfMention.hashCode());
        final Object $addressInfo = this.getAddressInfo();
        result = result * 59 + (($addressInfo == null) ? 43 : $addressInfo.hashCode());
        final Object $cartInfo = this.getCartInfo();
        result = result * 59 + (($cartInfo == null) ? 43 : $cartInfo.hashCode());
        final Object $orderKey = this.getOrderKey();
        result = result * 59 + (($orderKey == null) ? 43 : $orderKey.hashCode());
        final Object $priceGroup = this.getPriceGroup();
        result = result * 59 + (($priceGroup == null) ? 43 : $priceGroup.hashCode());
        final Object $systemStore = this.getSystemStore();
        result = result * 59 + (($systemStore == null) ? 43 : $systemStore.hashCode());
        final Object $usableCoupon = this.getUsableCoupon();
        result = result * 59 + (($usableCoupon == null) ? 43 : $usableCoupon.hashCode());
        final Object $userInfo = this.getUserInfo();
        result = result * 59 + (($userInfo == null) ? 43 : $userInfo.hashCode());
        return result;
    }
    
    @Override
    public String toString() {
        return "ConfirmOrderVo(addressInfo=" + this.getAddressInfo() + ", bargainId=" + this.getBargainId() + ", cartInfo=" + this.getCartInfo() + ", combinationId=" + this.getCombinationId() + ", deduction=" + this.getDeduction() + ", enableIntegral=" + this.getEnableIntegral() + ", enableIntegralNum=" + this.getEnableIntegralNum() + ", integralRatio=" + this.getIntegralRatio() + ", orderKey=" + this.getOrderKey() + ", priceGroup=" + this.getPriceGroup() + ", seckillId=" + this.getSeckillId() + ", storeSelfMention=" + this.getStoreSelfMention() + ", systemStore=" + this.getSystemStore() + ", usableCoupon=" + this.getUsableCoupon() + ", userInfo=" + this.getUserInfo() + ")";
    }
    
    public ConfirmOrderVo() {
    }
    
    public ConfirmOrderVo(final UserAddress addressInfo, final Integer bargainId, final List<StoreCartQueryVo> cartInfo, final Integer combinationId, final Boolean deduction, final Boolean enableIntegral, final Double enableIntegralNum, final Integer integralRatio, final String orderKey, final PriceGroupDto priceGroup, final Integer seckillId, final Integer storeSelfMention, final SystemStoreQueryVo systemStore, final StoreCouponUserVo usableCoupon, final UserQueryVo userInfo) {
        this.addressInfo = addressInfo;
        this.bargainId = bargainId;
        this.cartInfo = cartInfo;
        this.combinationId = combinationId;
        this.deduction = deduction;
        this.enableIntegral = enableIntegral;
        this.enableIntegralNum = enableIntegralNum;
        this.integralRatio = integralRatio;
        this.orderKey = orderKey;
        this.priceGroup = priceGroup;
        this.seckillId = seckillId;
        this.storeSelfMention = storeSelfMention;
        this.systemStore = systemStore;
        this.usableCoupon = usableCoupon;
        this.userInfo = userInfo;
    }
    
    public static class ConfirmOrderVoBuilder
    {
        private UserAddress addressInfo;
        private Integer bargainId;
        private List<StoreCartQueryVo> cartInfo;
        private Integer combinationId;
        private Boolean deduction;
        private Boolean enableIntegral;
        private Double enableIntegralNum;
        private Integer integralRatio;
        private String orderKey;
        private PriceGroupDto priceGroup;
        private Integer seckillId;
        private Integer storeSelfMention;
        private SystemStoreQueryVo systemStore;
        private StoreCouponUserVo usableCoupon;
        private UserQueryVo userInfo;
        
        ConfirmOrderVoBuilder() {
        }
        
        public ConfirmOrderVoBuilder addressInfo(final UserAddress addressInfo) {
            this.addressInfo = addressInfo;
            return this;
        }
        
        public ConfirmOrderVoBuilder bargainId(final Integer bargainId) {
            this.bargainId = bargainId;
            return this;
        }
        
        public ConfirmOrderVoBuilder cartInfo(final List<StoreCartQueryVo> cartInfo) {
            this.cartInfo = cartInfo;
            return this;
        }
        
        public ConfirmOrderVoBuilder combinationId(final Integer combinationId) {
            this.combinationId = combinationId;
            return this;
        }
        
        public ConfirmOrderVoBuilder deduction(final Boolean deduction) {
            this.deduction = deduction;
            return this;
        }
        
        public ConfirmOrderVoBuilder enableIntegral(final Boolean enableIntegral) {
            this.enableIntegral = enableIntegral;
            return this;
        }
        
        public ConfirmOrderVoBuilder enableIntegralNum(final Double enableIntegralNum) {
            this.enableIntegralNum = enableIntegralNum;
            return this;
        }
        
        public ConfirmOrderVoBuilder integralRatio(final Integer integralRatio) {
            this.integralRatio = integralRatio;
            return this;
        }
        
        public ConfirmOrderVoBuilder orderKey(final String orderKey) {
            this.orderKey = orderKey;
            return this;
        }
        
        public ConfirmOrderVoBuilder priceGroup(final PriceGroupDto priceGroup) {
            this.priceGroup = priceGroup;
            return this;
        }
        
        public ConfirmOrderVoBuilder seckillId(final Integer seckillId) {
            this.seckillId = seckillId;
            return this;
        }
        
        public ConfirmOrderVoBuilder storeSelfMention(final Integer storeSelfMention) {
            this.storeSelfMention = storeSelfMention;
            return this;
        }
        
        public ConfirmOrderVoBuilder systemStore(final SystemStoreQueryVo systemStore) {
            this.systemStore = systemStore;
            return this;
        }
        
        public ConfirmOrderVoBuilder usableCoupon(final StoreCouponUserVo usableCoupon) {
            this.usableCoupon = usableCoupon;
            return this;
        }
        
        public ConfirmOrderVoBuilder userInfo(final UserQueryVo userInfo) {
            this.userInfo = userInfo;
            return this;
        }
        
        public ConfirmOrderVo build() {
            return new ConfirmOrderVo(this.addressInfo, this.bargainId, this.cartInfo, this.combinationId, this.deduction, this.enableIntegral, this.enableIntegralNum, this.integralRatio, this.orderKey, this.priceGroup, this.seckillId, this.storeSelfMention, this.systemStore, this.usableCoupon, this.userInfo);
        }
        
        @Override
        public String toString() {
            return "ConfirmOrderVo.ConfirmOrderVoBuilder(addressInfo=" + this.addressInfo + ", bargainId=" + this.bargainId + ", cartInfo=" + this.cartInfo + ", combinationId=" + this.combinationId + ", deduction=" + this.deduction + ", enableIntegral=" + this.enableIntegral + ", enableIntegralNum=" + this.enableIntegralNum + ", integralRatio=" + this.integralRatio + ", orderKey=" + this.orderKey + ", priceGroup=" + this.priceGroup + ", seckillId=" + this.seckillId + ", storeSelfMention=" + this.storeSelfMention + ", systemStore=" + this.systemStore + ", usableCoupon=" + this.usableCoupon + ", userInfo=" + this.userInfo + ")";
        }
    }
}
